From 8408819d613490ee710edd0ab63fa06a2c663db1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Javier=20Jard=C3=B3n?= Date: Mon, 27 Feb 2012 10:59:41 +0000 Subject: [PATCH] demos/gtk-demo/colorsel.c: Do not use gtk_dialog_run() --- demos/gtk-demo/colorsel.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/demos/gtk-demo/colorsel.c b/demos/gtk-demo/colorsel.c index 633e13b9c2..d1d858ca48 100644 --- a/demos/gtk-demo/colorsel.c +++ b/demos/gtk-demo/colorsel.c @@ -30,6 +30,18 @@ draw_callback (GtkWidget *widget, return TRUE; } +static void +response_cb (GtkDialog *dialog, + gint response_id, + gpointer user_data) +{ + if (response_id == GTK_RESPONSE_OK) + { + gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (dialog), &color); + gtk_widget_override_background_color (da, 0, &color); + } +} + static void change_color_callback (GtkWidget *button, gpointer data) @@ -37,20 +49,16 @@ change_color_callback (GtkWidget *button, GtkWidget *dialog; GtkColorSelection *colorsel; GtkColorChooserDialog *selection_dialog; - gint response; dialog = gtk_color_chooser_dialog_new ("Changing color", GTK_WINDOW (window)); gtk_color_chooser_set_rgba (GTK_COLOR_CHOOSER (dialog), &color); - response = gtk_dialog_run (GTK_DIALOG (dialog)); - - if (response == GTK_RESPONSE_OK) - { - gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (dialog), &color); - gtk_widget_override_background_color (da, 0, &color); - } + g_signal_connect (dialog, + "response", + G_CALLBACK (response_cb), + NULL); - gtk_widget_destroy (dialog); + gtk_widget_show_all (dialog); } GtkWidget * -- 2.30.2